Device-to device communication of mobile user devices is a relatively new field of interest. One protocol for enabling device-to-device communication is Universal Plug and Play (UPnP™) UPnP technology defines an architecture for pervasive peer-to-peer network connectivity of intelligent appliances, wireless devices, and PCs. It is designed to bring easy-to-use, flexible, standards-based connectivity to ad-hoc or unmanaged networks.
In a local area network (LAN) the UPnP protocol enables communication between services and control points which reside on different (physical and logical UPnP) devices. Controlled devices are devices that offer one or more services. A control point (CP) is an application that is able to control a service. Both control points and controlled devices can be implemented on a variety of platforms including personal computers and embedded systems.
When a device is started up, it advertises its presence by broadcasting in the LAN using a specific multicast address, e.g. 239.255.255.20:1900. CPs in the LAN listen to the specific multicast address and detect the presence (advertising) of devices and services running on those devices. A CP can also give a search (searching) request using a filter and get answer of requested devices. Advertising and searching are both referred to as discovery. The fundamental exchange in both cases is a discovery message containing discovery information, i.e. a few essential specifics about the device or one of its services, e.g., its type, identifier, and a pointer to more detailed information.
The CP can interact (based on unicast) with the found device and acquire a list of available services. After selecting a specific service the CP gets a list of available functions. Interaction about services and functions is standardized in the form of XML files that also contain commands for controlling the service and offering subscription for service event messages.
In general, mobile devices are not connected in a LAN, but connected (via tunneling) and a Packet Gateway (P-GW) to either the Internet or an operator wide IP addressing domain. Now the problem is how to enable specific mobile devices for discovery, control and event messaging in a flexible way as in a LAN.
Furthermore, in a LAN, discovery is carried out by means of messages to a UPnP standardized multicast address. For device-to-device communication between mobile devices sending multicast messages over the whole Internet or the operator wide IP addressing domain will not work because of the uncontrolled spread of these messages. A reduction of the number of allowed hops in the network may mitigate this problem to some extent but is counterproductive for the range wherein devices can communicate using UPnP.